//
//  BaseTableViewController.swift
//  swift版本微博
//
//  Created by 张leslie45 on 16/1/12.
//  Copyright © 2016年 张leslie45. All rights reserved.
//

import UIKit

class BaseTableViewController: UITableViewController,VisitorLoginViewDelegate {

    //定义用户是否登录的标示
    var userLogin = UserAccountViewModel().userLogin
    
    //访客视图
    var visitorLoginView:VisitorLoginView?
    
    //loadView 
    //1.苹果专门为手写代码准备的,一旦实现该方法 SB /xib 会自动失效
    //2.准备视图层次结构 在UIViewController中会将会View准备出来
    //3.在super.loadView之前,view没有被创建出来(nil) 追踪view 会造成递归调用
    
    override func loadView() {
//        super.loadView()
        
        //自定义
        if userLogin{
         //创建tableView
            super.loadView()
//            print(view)
            
        }else{
      
            //自定义访客视图
            visitorLoginView = VisitorLoginView()
            //设置代理
            visitorLoginView?.visitorViewDelegate = self
            view = visitorLoginView
            //设置导航条的item
            self.navigationItem.rightBarButtonItem = UIBarButtonItem(title: "注册", style: .Plain, target: self, action: "userWillRegister")
            
            self.navigationItem.leftBarButtonItem = UIBarButtonItem(title: "登录", style: .Plain, target: self, action: "userWillLogin")
        }
    
    }
    
    //MARK:实现VisitorLoginViewDelegate方法
    func userWillRegister() {
        print(__FUNCTION__)
    }
    func userWillLogin() {
        print(__FUNCTION__)
        let oauth = OAuthViewController()
        let nav = UINavigationController(rootViewController: oauth)
        //跳转到授权页面
       presentViewController(nav, animated: true, completion: nil)
        
        
    }

//    会在viewWillLayoutsubViews方法中 设置view的大小 
//    override func viewWillLayoutSubviews() {
//        super.viewWillLayoutSubviews()
//        print(view)
//        print(view.classForCoder)
//    }
  
    
    override func viewDidLoad() {
        super.viewDidLoad()

    }

}
